কন্ডিশনাল লজিক উদাহরণ

T-SQL এর কন্ডিশনাল লজিক - টি-এসকিউএল (T-SQL) - Database Tutorials

327

SQL-এ কন্ডিশনাল লজিক সাধারণত IF...ELSE বা CASE স্টেটমেন্টের মাধ্যমে ব্যবহৃত হয়। কন্ডিশনাল লজিক ব্যবহৃত হয় যখন আপনার বিভিন্ন শর্ত অনুযায়ী বিভিন্ন অ্যাকশন নিতে হয়।

এখানে IF...ELSE এবং CASE এর উদাহরণ দেওয়া হলো:


১. IF...ELSE কন্ডিশনাল লজিক

IF...ELSE স্টেটমেন্টটি কন্ডিশনাল লজিক প্রয়োগ করতে ব্যবহৃত হয়, যেখানে শর্তের ভিত্তিতে কোডের বিভিন্ন অংশ চালানো হয়।

উদাহরণ ১: IF...ELSE দিয়ে শর্ত পরীক্ষা করা

ধরা যাক, আপনার একটি Employees টেবিল আছে এবং আপনি একটি কর্মীকে Status আপডেট করতে চান, তার কর্মদক্ষতার ওপর ভিত্তি করে। যদি কর্মীর Salary 50,000 এর বেশি হয়, তাহলে তার স্ট্যাটাস 'Active' হবে, অন্যথায় 'Inactive' হবে।

DECLARE @Salary INT;
SET @Salary = 60000; -- কর্মীর সেলারি সেট করুন

IF @Salary > 50000
BEGIN
    PRINT 'Employee is Active';
END
ELSE
BEGIN
    PRINT 'Employee is Inactive';
END

এখানে, যদি @Salary 50,000 এর বেশি হয়, তাহলে 'Employee is Active' প্রিন্ট হবে। অন্যথায়, 'Employee is Inactive' প্রিন্ট হবে।


উদাহরণ ২: টেবিলের আপডেট করা IF...ELSE এর মাধ্যমে

ধরা যাক, আপনি Employees টেবিলের কর্মীদের Status আপডেট করতে চান, তাদের Salary এর ভিত্তিতে:

UPDATE Employees
SET Status = 
    CASE 
        WHEN Salary > 50000 THEN 'Active'
        ELSE 'Inactive'
    END

এখানে, Salary যদি 50,000 এর বেশি হয়, তাহলে Status কলামের মান 'Active' হবে, অন্যথায় 'Inactive' হবে।


২. CASE কন্ডিশনাল লজিক

CASE একটি SQL এক্সপ্রেশন যা একাধিক শর্ত পরীক্ষা করতে ব্যবহৃত হয় এবং শর্তের ভিত্তিতে ভিন্ন মান প্রদান করে।

উদাহরণ ১: CASE দিয়ে মান পরিবর্তন

ধরা যাক, আপনার Employees টেবিলে Salary এর ভিত্তিতে কর্মীদের Grade নির্ধারণ করতে চান:

SELECT Name, Salary,
    CASE 
        WHEN Salary > 80000 THEN 'A'
        WHEN Salary BETWEEN 50000 AND 80000 THEN 'B'
        ELSE 'C'
    END AS Grade
FROM Employees;

এখানে, কর্মীর Salary এর ভিত্তিতে:

  • যদি সেলারি 80,000 এর বেশি হয়, তাহলে Grade হবে 'A'
  • যদি সেলারি 50,000 থেকে 80,000 এর মধ্যে হয়, তাহলে Grade হবে 'B'
  • অন্যথায় Grade হবে 'C'

উদাহরণ ২: CASE ব্যবহার করে ডেটা আপডেট করা

ধরা যাক, আপনি Employees টেবিলের Salary এর ভিত্তিতে Status আপডেট করতে চান:

UPDATE Employees
SET Status = 
    CASE 
        WHEN Salary > 80000 THEN 'Active'
        WHEN Salary BETWEEN 50000 AND 80000 THEN 'Probation'
        ELSE 'Inactive'
    END

এখানে, কর্মীর Salary এর ভিত্তিতে:

  • 80,000 এর বেশি সেলারি হলে Status হবে 'Active'
  • 50,000 থেকে 80,000 এর মধ্যে সেলারি হলে Status হবে 'Probation'
  • অন্যথায় Status হবে 'Inactive'

সারাংশ

  • IF...ELSE: একক শর্তে সিদ্ধান্ত নেওয়ার জন্য ব্যবহৃত হয়। এটি সাধারণত ছোট স্কোপে কন্ডিশনাল লজিক প্রয়োগে ব্যবহৃত হয়।
  • CASE: একাধিক শর্তের জন্য ব্যবহৃত হয় এবং এটি একটি এক্সপ্রেশন হিসেবে কাজ করে, যা টেবিলের সিলেক্ট বা আপডেট স্টেটমেন্টে ব্যবহার করা হয়।

এই কন্ডিশনাল লজিক আপনাকে SQL কোডের মধ্যে শর্তভিত্তিক সিদ্ধান্ত নিতে সাহায্য করে এবং ডেটাবেসের কার্যকারিতা আরো শক্তিশালী ও কাস্টমাইজড করে তোলে।

Content added By
Promotion

Are you sure to start over?

Loading...